
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <script type="text/javascript" src="<?php echo base_js(); ?>flexigrid/jquery.js"></script>
    
    <?php
if(isset($ShowFlexgrid) and $ShowFlexgrid){
    echo '
<link rel="stylesheet" type="text/css" href="'.base_js().'flexigrid/flexigrid.css" />
<script type="text/javascript" src="'.base_js().'flexigrid/flexigrid.js"></script>
';
} ?>

</head>
<body>

<!-- establecemos las configuraciones -->
<script type="text/javascript">
$(document).ready(function(){

$("#flex1").flexigrid({

/* indicamos la dirección del archivo que desde el servidor se encarga de
acceder a la base de datos, puede ser un XML o una cadena en formato JSON
devuelta por un archivo PHP, por ejemplo.
*/
url: '<?php echo base_url(),'grid_c/get_json'; ?>',

// indicamos en que formato se manejaran los datos
dataType: 'json',

/* establecemos una lista de columnas a usar, indicando :
  display  -> el nombre que vera el usuario
  name     -> nombre interno de la columna
  width    -> anchura de la columna
  sortable -> si la columna se puede ordenar
  align    -> la alineación del texto.
*/
colModel : [
  {display: 'ID', name : 'id', width : 40, sortable : true, align: 'center'},
  {display: 'Nombre', name : 'nombre', width : 40, sortable : true, align: 'center'},
  {display: 'Apellido', name : 'apellido', width : 190, sortable : true, align: 'center'},
  {display: 'Domicilio', name : 'domicilio', width : 130, sortable : true, align: 'center'},
  {display: 'Localidad', name : 'localidad', width : 130, sortable : true, align: 'center', hide: false},
  {display: 'Provincia', name : 'provincia', width : 80, sortable : true, align: 'center'},
  {display: 'Telefono', name : 'telefono', width : 80, sortable : true, align: 'center'},
  {display: 'Email', name : 'email', width : 80, sortable : true, align: 'center'}
  
],

/* agregamos los botones que apareceran en la barra de herramientas
por ejemplo, botones para añadir, editar y eliminar registros.
con la propiedad BClass indicamos el tipo de boton, se establecera asi
la imagen de fondo para el botón
ejemplo: {name: 'Eliminar', bclass: 'add', onpress : funcion_eliminar}
*/
                
buttons : [
  {name: 'Agregar', bclass: 'agregar', onpress : test, title:'Agregar nuevo registro'},
  {name: 'Editar', bclass: 'editar', onpress : test, title:'Editar registro'},
  {name: 'Eliminar', bclass: 'eliminar', onpress : test, title:'Eliminar registro(s)'},
  {name: 'Eliminar todo', bclass: 'eliminar_todo', onpress : test, title:'Eliminar todos los registros'},
  {name: 'Mostrar todo', bclass: 'mostrar_todo', onpress : filtro, title:'Mostrar todos los registros'},
  /*{separator: true},
  {name: '[Mostrar todo]', onpress: filtro},*/
  {separator: true}, // linea separadora
  {name: 'A', onpress: filtro},
  {name: 'B', onpress: filtro},
  {name: 'C', onpress: filtro},
  {name: 'D', onpress: filtro},
  {name: 'E', onpress: filtro},
  {name: 'F', onpress: filtro},
  {name: 'G', onpress: filtro},
  {name: 'H', onpress: filtro},
  {name: 'I', onpress: filtro},
  {name: 'J', onpress: filtro},
  {name: 'K', onpress: filtro},
  {name: 'L', onpress: filtro},
  {name: 'M', onpress: filtro},
  {name: 'N', onpress: filtro},
  {name: 'O', onpress: filtro},
  {name: 'P', onpress: filtro},
  {name: 'Q', onpress: filtro},
  {name: 'R', onpress: filtro},
  {name: 'S', onpress: filtro},
  {name: 'T', onpress: filtro},
  {name: 'U', onpress: filtro},
  {name: 'V', onpress: filtro},
  {name: 'W', onpress: filtro},
  {name: 'X', onpress: filtro},
  {name: 'Y', onpress: filtro},
  {name: 'Z', onpress: filtro},
  {separator: true},
  {name: '#', onpress: filtro, title:'Buscar por números'}
],

// indicamos que columnas se pueden usar para filtrar las busquedas
searchitems : [
  {display: 'Apellido', name : 'apellido'},
  {display: 'Documento', name : 'documento', isdefault: true}
],

// indicamos el nombre de la columna con la
// q se ordenaran los registros por defecto
sortname: 'apellido',

// indicamos que por defecto los registros se mostraran ascendentemente
sortorder: "asc",

// esta propiedad permite activar o desactivar los botones de navegación de la página
usepager: true,

// titulo que aparecerá en la ventana
title: 'Lista de Pasajeros',

// indicamos si se permite al usuario especificar el número de resultados por página.
useRp: true,

// numero de registros a mostrar, por defecto 30
rp: 30,

// esta propiedad permite establecer si se puede o no, minimizar la Flexigrid
// (icono en la esquina superior derecha)
showTableToggleBtn: true,

// ancho de la flexigrid por defecto
width: 700,

// alto de la flexigrid por defecto
height: 440

});});

function redireccionar(sControlador){  
    $(location).attr('href',"<?php echo base_url(); ?>" + sControlador);
}

// funcion para los botones de filtro
function filtro(com){
   jQuery('#flex1').flexOptions({
      // indicamos los parametros del filtro
      newp:1, 
      params:[
         {name:'letter_pressed', value: com},
         {name:'qtype',value:$('select[name=qtype]').val()}
      ]
   });

   // recargamos la grid
   jQuery("#flex1").flexReload();
}

function test(com, grid){
        
    if (com == 'Agregar'){
        redireccionar('ccliente/nuevo');
    
    }else if (com == 'Editar'){
        if($('.trSelected',grid).length==1){

               var items = $('.trSelected',grid);
               var itemlist='';
               for(i=0;i<items.length;i++){
                    itemlist+= items[i].id.substr(3);
		}
                redireccionar('ccliente/modificar/' + itemlist);

        }else if($('.trSelected',grid).length>1){
            alert('Sólo puede seleccionar un registro para editar..');
            return false;
	}else {
            alert('Debe seleccionar un registro pata poder actualizarlo..');
            return false;
        }
    
    }else if (com == 'Eliminar') {

        if($('.trSelected',grid).length==1){

               var items = $('.trSelected',grid);
               var itemlist='';
               for(i=0;i<items.length;i++){
                    itemlist+= items[i].id.substr(3);
		}
                redireccionar('ccliente/eliminar/' + itemlist);

        }else if($('.trSelected',grid).length>1){
            alert('Sólo puede seleccionar un registro para eliminar..');
            return false;
	} else {
            alert('Debe seleccionar un registro pata poder eliminarlo..');
            return false;
        }
    }else if (com == 'Eliminar todo'){
        
        if(confirm('¿Realmente desea eliminar todo los registros de la tabla?')){
            $.ajax({
                type: "POST",
                dataType: "json",
                url: '<?php echo base_url(),'grid_c/eliminar_todo'; ?>',
                data: "items=*",
                success: function(data){
                    alert("Se han eliminado todos los registros de la tabla.");
                    $("#flex1").flexReload();
                }
            });
	}
    }
}
</script>
<table id="flex1" style="display:none;font-size:11px;"></table>

